
//-----------------------------------------------------------------------------

#define Volt A1
#define Buzz 4
#define Relay 3
#define LED 0

float Val_Volt=0;



//-----------------------------------------------------------------------------
 void setup (){

  pinMode(Volt, INPUT);
  pinMode(Buzz, OUTPUT);
  pinMode(Relay, OUTPUT);
  pinMode(LED, OUTPUT);
  digitalWrite(Relay, LOW);
  digitalWrite(Buzz, LOW);

 }

//-----------------------------------------------------------------------------

void loop()
 {

  Val_Volt = read_adc(Volt);
  if (Val_Volt < 512)
     delay (1000);
     Val_Volt = read_adc(Volt);
  if (Val_Volt < 512)
     while(true)
     {
      digitalWrite(Relay, LOW);
      digitalWrite(LED, LOW);
      digitalWrite(Buzz, HIGH);
      delay (400);
      digitalWrite(Buzz, LOW);
      delay (400);
     }
  if (Val_Volt > 540)         
     digitalWrite(Relay, HIGH);
     digitalWrite(LED, HIGH);
     
 }
 
int read_adc(int adc_parameter)
{
  
  int sum = 0;
  int sample ;
  for (int i=0; i<10; i++) 
  {                                       
    sample = analogRead(adc_parameter);   
    sum += sample;                       
    delayMicroseconds(50);            
  }
  return(sum / 10);          
}